package com.example.questionsystem.modules.qu.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.questionsystem.modules.qu.Vo.QuestionVO;
import com.example.questionsystem.modules.qu.dto.QuestionBankDto;
import com.example.questionsystem.modules.qu.dto.QuestionDTO;
import com.example.questionsystem.modules.qu.entity.QuestionBanks;

import java.util.List;
import java.util.Map;

public interface QuestionBankService extends IService<QuestionBanks> {


    void batchSave(QuestionBankDto questionBankDto);

    List<QuestionBanks> getQuestionBanksBySubjectId(String subjectId);

    IPage<QuestionVO> search(QuestionDTO questionDTO);

    Map<String, Map<String, Integer>> getKnowledgeQuestionStats(String subjectId);
    //根据题型获取它的题目以及子题目
    List<QuestionBanks> getQuestionsByTypeAndParentId(String subjectId, String questionType);

    void deleteBySubjectQuestion(String subjectId);

    /**
     * 根据题目ID更新题目HTML与纯文本
     * @param questionId 题目ID
     * @param questionHtml 新题目HTML
     */
    void updateQuestionContent(String questionId, String questionHtml);
}
